Phenotyping effort

Collaborative phenotyping effort of European Drosophila melanogaster populations

Genomic analyses (Kapun et al. 2020) showed that there is longitudinal population structure, continent-wide sweeps, candidate genes for local climate adaptation by using 48 pooled population samples from 32 locations.

In 2017, DrosEU consortium has decided to make a collaborative phenotyping effort of European Drosophila melanogaster populations at the Groningen meeting.

The call was made with approximate numbers of populations, lines, etc. and under predefined criteria (finish within a year, reps, blocks, etc) and participating labs have indicated which traits they are willing to phenotype.

Sampling Locations

Nine sampling locations were chosen based on genomic data and cover a wide range of latitude (~20°) and longitude (~40°) across the continent (see table below). From each location, 15 to 20 isofemale lines were established in corresponding labs at the sampling location and the isofemale lines were centrally maintained by Élio Sucena at Instituto Gulbenkian de Ciência (IGC), Lisbon, Portugal. A total of 173 isofemale lines were used in this study.

Table X. Sampling locations, coordinates and collectors, sorted by increasing latitude
Country Location Latitude Longitude Altitude Collector
Portugal Recarei 41.150 -8.410 175 Jorge Vieira
Spain Gimenells (Lleida) 41.618 0.620 173 Josefa Gonzalez
Denmark Karensminde 55.945 10.213 15 Mads Schou
Germany Munich 48.180 11.610 520 Amanda Glaser-Schmitt
Austria Mauternbach 48.375 15.560 572 Andrea Betancourt
Finland Akaa 61.100 23.520 88 Maaria Kankare
Ukraine Uman 48.753 30.206 214 Iryna Kozeretska
Turkey Yesiloz 40.231 32.260 680 Banu Onder
Russia Valday 57.979 33.244 217 Elena Pasyukova
## Scale on map varies by more than 10%, scale bar may be inaccurate

Contributers (phenotyping)

Contributed labs are Abbott, Bergland, Billeter, Colinet, Flatt, Fricke, Gibert, Gonzalez, Grath, Hoedjes, Kozeretska, Mensch, Onder, Parsch, Pasyukova, Posnien, Ritchie, Schlötterer, Schmidt, Stamenkovic-Radak, Tauber, Vieira, Wegener, Zwaan and detailed list below :

Table X. Contributed labs and traits, sorted by PI
Country Lab PI Trait
Sweden Lund Abbott Pigmentation
USA Charlottesville Bergland Diapause
The Netherlands Groningen Billeter Fecundity
France Rennes Colinet Dry weight
Switzerland Fribourg Flatt Diapause
Switzerland Fribourg Flatt Lifespan
Germany Muenster Fricke Fecundity
France Lyon Gibert Development time
France Lyon Gibert Pigmentation
France Lyon Gibert Viability
Spain Barcelona Gonzalez Cold-shock mortality
Spain Barcelona Gonzalez Starvation resistance
Germany Munich Grath Development time
Germany Munich Grath Viability
The Netherlands Lausanne Hoedjes Development time
The Netherlands Lausanne Hoedjes Dry weight
The Netherlands Lausanne Hoedjes Viability
Ukraine Kyiv Kozeretska Cold-shock mortality
Ukraine Kyiv Kozeretska Thorax length
Argentina Buenos Aiers Mensch Chill-coma recovery time
Turkey Ankara Onder Dry weight
Turkey Ankara Onder Starvation resistance
Turkey Ankara Onder Wing area
Germany Munich Parsch Heat-shock mortality
Germany Munich Parsch Lifespan
Russia Moscow Pasyukova Lifespan
Russia Moscow Pasyukova Starvation resistance
Germany Göttingen Posnien Thorax length
Germany Göttingen Posnien Wing area
UK St Andrews Ritchie Thorax length
UK St Andrews Ritchie Wing area
UK St Andrews Ritchie Wing patterning 
Austria Vienna Schlötterer Diapause
USA Philadelphia Schmidt Development time
USA Philadelphia Schmidt Pigmentation
USA Philadelphia Schmidt Thorax length
USA Philadelphia Schmidt Time to pupation
USA Philadelphia Schmidt Viability
Serbia Belgrade Stamenkovic-Radak Development time
Serbia Belgrade Stamenkovic-Radak Viability
Serbia Belgrade Stamenkovic-Radak Wing area
Israel Haifa Tauber Locomotor activity
Portugal Porto Vieira Chill-coma recovery time
Portugal Porto Vieira Cold-shock mortality
Portugal Porto Vieira Heat-shock mortality
Germany Würzburg Wegener Circadian eclosion timing
The Netherlands Wageningen Zwaan Development time
The Netherlands Wageningen Zwaan Viability

Contributers (analyses)

Esra Durmaz (all), Envel Kerdaffrec (data check, data clean-up, data reformatting, LS, Dia, and others), Katja Hoedjes (DW, Via, DT), Banu Onder (SR, WA), Chris Wegener (CET), Eran Tauber (LA), Rudolf Rohr (UniFr), coordination-team

Phenotyping

Overview

Methods

Wolbachia

Diets

Traits

Contributors and their experimental methods

Viability

Gibert, Grath, Hoedjes, Schmidt, Stamenkovic-Radak and Zwaan Labs

3-5 day old adults (at least 25 pairs) are allowed to lay eggs en masse. Yeast is provided to stimulate egg laying (for at least 2 hours). Eggs are collected, and 40 are placed in each vial(^*^). Viability is calculated per vial, as the percentage of individuals that emerged from the 40 eggs.

Please see below number of

^*^ @ Schmidt lab, females were allowed to lay eggs for Xh, and viability is calculated as the percentage of individuals that emerged from total number of eggs, per vial.

Developmental time

Egg-to-pupa developmental time

Schmidt Lab

Egg-to-adult developmental time

Gibert, Grath, Hoedjes, Schmidt, Stamenkovic-Radak and Zwaan Labs

Developmental time is scored as both the egg-to-pupa and egg-to-adult development time. Both were scored twice a day, when the chamber lights are turned on and two hours before they are turned off. In order to measure the egg-to-pupa developmental time, the spot where a pupa is found is marked with a permanent marker to keep track of which pupae have emerged in each day. The egg-to-adult developmental time is estimated by counting all emerged adults from the vial, and by sexing them.

Dry weight

Colinet, Hoedjes and Onder Labs

At day 7 after emergence, flies are killed by snap freezing them in liquid nitrogen, by putting them at -20ºC or by putting them into an ethyl acetate solution and stored at -20ºC. Then they are sexed and placed into 96 wells plates, and placed in an oven set at 60-70 °C, for at least 3 days. At this point flies can be stored at room temperature using a protective cover. If this is the case, the day before measurements are made dry flies are again placed for 24h in the oven (60-70 °C) to ensure material is well dehydrated. Flies are then placed on a small piece of aluminium foil for direct weight measurement on microbalance (accuracy 1µg).

Thorax length

Kozeretska, Posnien, Ritchie and Schmidt Labs

Five to seven days old flies are placed onto a double-sided sticky tape attached to a microscope slide and a picture of the thorax taken using a digital camera connected to a dissecting microscope. The same magnification and resolution is always used to increase reproducibility, and a scale bar inserted on each photo to allow transforming pixels into µm units. Thorax length is defined as the distance from the anterior margin of the thorax to the posterior tip of the scutellum and it is measured using the “Straight Line” in ImageJ/Fiji.

Wing area

Onder, Posnien, Ritchie and Stamenkovic-Radak Labs

Both the left and right wings of five to seven days old flies (10 flies per sex per replicate) are removed and placed into a drop of Entellan®Merck, Hoyer’s Medium, sticked to a double-side sticky tape, or taped directly to the slide. Pictures of the wing preparations are taken using a digital camera connected to a dissecting microscope. The same magnification and resolution is always used to increase reproducibility. A scale bar is placed on each photo to allow transforming pixels into µm units. Manual measurements of wing length and wing area are performed using the “Straight Line” and “Polygon Selection” tools, respectively of ImageJ/Fiji (10.1371/journal.pone.0000007).

Fecundity

Billeter and Fricke Labs

For each isofemale line, 10 males and 10 females are placed together in single-sex groups and allowed to mature for five days. Then, they are placed together (5-7 pairs), and mating interactions observed to ensure successful mating (at least 10 min copulation duration) to ensure that we have five successfully mated females. After a successful mating, males are discarded and females allowed to oviposit alone for 48 hours, moved to another vial, and allowed to oviposit for four days, and again moved to another vial and allowed to oviposit for two days to check that of egg-laying stopped. Vials are incubated until all offspring is born. Individuals are then frozen and the offspring counted.

Lifespan

Flatt, Parsch and Pasyukova Labs

Line level lifespan: Ten flies per sex/line are placed in each vial. The age at death will be scored when changing the food, at least three times a week. Five replicates are used.

Population level lifespan: Flies are kept in 1L demography cages (5 flies per line/sex for each population). The age at death will be scored when changing the food, at least three times a week. Ten replicates were performed.

Cold-shock mortality

Gonzalez, Kozeretska and Vieira Labs

Batches of 15-20 seven days old flies are placed for 18 hours in an empty vial immersed in an ice-water slurry box placed at a 4°C room for 18 hours. Then the vials are removed to a bench in a 25°C room and mortality scored 24 hours later.

Chill-coma recovery time

Vieira and Mensh Labs

Sexed flies are placed in an empty vial immersed in an ice-water slurry box placed at a 4°C room in the morning. Six hours later, flies are removed from the tube to individual wells of 24 well plates while being kept on ice. A timer is started once the plate is moved from the ice to a bench in a 25°C room. Each fly is checked by eye for recovery for a maximum of 60 minutes. Flies that are able to stand on their legs are considered recovered and the CCRT (in seconds) recorded.

Heat-shock mortality

Parsch and Vieira Labs

Batches of 15-20 seven days old flies are placed in empty vials inside a 37ºC incubator and mortality checked for 7 hours every 30 minutes.

Diapause

Bergland, Flatt and Schlotterer Labs

In order to induce diapause, two hour old ‘phenotypic virgins’ (pharate or melanized with meconium visible) female flies are exposed to 12°C and 10:14 light/dark hours for 3 weeks, using an incubator that allows temperature tracking. Vials are changed once per week. After three weeks under diapause conditions, flies are frozen at -80C until dissection. Both ovaries will be examined and classified according to the following simplified ‘classification’: 1) < stage 10: diapause; 2) stage 10-13: intermediate; 3) stage 14: non-diapause.

  • Standard diapause conditions: 12°C at 10:14 hrs L:D (under these conditions we might expect around 50% dipause frequency)
  • duration of exposure: 3 weeks
  • assays will be done in incubators (Percival or Memmert); temperature conditions will be tracked using data loggers / iButtons
  • Try to have haphazard standardization; similar conditions coupled with consistent tracking of temperature (multiple iButtons, for example)
  • We will use egg lays in bottles to be able to collect more flies for the assay (approx. 1-2 bottles per line)
  • Larval density will be controlled (approximately) prior to assays: we will do this by letting a fixed number of (approx. 10-20) females (housed together with 5-10 males) oviposit over night (fixed time window) - how many females and the duration of egg laying might need to be adjusted a bit depending on the fertility of the lines (to be determined when lines are being amplified prior to assays)
  • The Bergland and Flatt labs will standardize their fly food according to the Gulbenkian recipe (in terms of amounts / proportions); Manolis from the Schlötterer lab will not standardize the food and use their local diet; importantly, flies for the assays will not be exposed to any (additional) live yeast (i.e., the diet will contain liophilized yeast but no live yeast sprinkled on top).
  • From the bottles we will collect upon eclosion ‘phenotypic virgins’ (=pharate adults or melanized with meconium visible), approx. within 2 hours after eclosion
  • Flies will be kept in vials for assay (15-20 flies in the same vial to account for mortality); we aim to measure a minimum of 10 females per line (from approx. 10-15 lines x 10 populations, yielding about 1000-1500 flies for dissections in total)
  • The food in the assays will be changed once per week
  • To keep the workload and effort manageable the assays will be performed in 2-3 blocks (optimally only 2) over time: e.g., from each population we will measure a subset of all lines (e.g., 5-7 lines, i.e. 1/2 or 1/3 of all lines) in each of the 2-3 blocks.
  • After 3 weeks under diapause conditions, flies will either be dissected or kept frozen until dissection (dry, at -80C; can be stored for a few months)
  • We will adopt a simplified diapause ‘classification’:
  • Stage 10 will be defined as the checkpoint
  • < Stage 10: diapause
  • Stage 10-13: intermediate
  • Stage 14: non-diapause
  • We will examine both ovaries.

Circadian eclosion timing

Wegener Lab

Locomotor activity

Tauber Lab

The locomotor activity of the flies (males only) was measured using the DAM2 Drosophila monitors (Trikinetics Inc., Waltham, MA). Flies were 1-3 days old. Single flies were placed in glass tubes (10 cm × 0.5 cm) that were filled with 2 cm sugar/agar medium. The monitors were placed in light chambers driven by LED, in an incubator at 24°C, ~30% humidity. The flies were entrained to a light-dark cycle (LD 12:12) for 5d and then allowed to free-run for 10 d in constant darkness (DD). The activity data were processed into 30 min bins, and four different variables were analysed. These included the circadian period, and the phase, which were analyzed using the FFT NLLS algorithm available at the BioDare2 server (https://biodare2.ed.ac.uk/). The other two variables, level of activity and the nocturnal/diurnal ratio were analyzed by a custom-made R script.

Starvation resistance

Gonzalez, Onder and Pasyukova Labs

Batches of 10 sexed flies are transferred to glass vials filled with 5 mL of 2% agar for starvation 3-7 days after eclosion. The age at death will be scored every 8 hours.

Pigmentation

Abbott, Gibert and Schmidt

For each line, 10 females, 13-15 days old, either alive or stored in 95% ethanol, are air dried and placed on their left side, and pictures taken using a dissecting microscope. Images are then analysed in ImageJ 1.46r, using the Area Fraction measurement in the Analyze menu. Area Fraction measures the percentage of pixels in a selected area that have been highlighted in red using the Threshold tool. This gives an estimate of the percentage of dark pigmentation on the three terminal tergites of the abdomen (4, 5 and 6).

Data reformatting

MasterSheets

Insert a MasterSheet example

Data check

For each trait, sex and lab, we run counts for population, line and replicate vial (if applicable).

Results I : Linear Models

“Plots and Linear Models by Lab” are presented in alphabetical order.

setwd(localgit)

Viability

Contributors:

Gibert Lab :Cristina Vieira, Laurence Mouton, Natacha Kremer, Sonia Martinez, Patricia Gibert

Grath Lab : Ingo Müller, Sonja Grath

Hoedjes Lab : Hristina Kostic, Katja Hoedjes

Schmidt Lab : Ozan Kiratli, Yonatan Babore, Liam Forsythe, Paul Schmidt

Stamenkovic-Radak Lab : Marija Savic Veselinovic, Marija Tanaskovic, Aleksandra Patenkovic, Mihailo Jelic, Katarina Eric, Pavle Eric, Slobodan Davidovic, Marina Stamenkovic-Radak

Zwaan Lab : Joost van den Heuvel, Bas Zwaan

Data reformatting

Reading data in R

d_Via <- read.csv("MasterSheets_Oct21_git/VIA_MasterSheet_Oct21.csv")
str(d_Via)
## 'data.frame':    2367 obs. of  12 variables:
##  $ Supervisor.PI               : chr  "Gibert" "Gibert" "Gibert" "Gibert" ...
##  $ Diet                        : chr  "NS" "NS" "NS" "NS" ...
##  $ Batch                       : int  1 1 1 1 1 1 1 1 1 1 ...
##  $ Population                  : chr  "AK" "AK" "AK" "AK" ...
##  $ Line                        : chr  "AK1" "AK1" "AK1" "AK10" ...
##  $ ReplicateVialOld            : int  1 2 3 1 2 3 1 2 3 1 ...
##  $ ReplicateVial               : chr  "Gibert_1_AK1_1" "Gibert_1_AK1_2" "Gibert_1_AK1_3" "Gibert_1_AK10_1" ...
##  $ ProportionEggtoAdultSurvival: num  0.68 0.73 0.63 0.85 0.75 0.8 0.85 0.88 0.7 0.68 ...
##  $ Country                     : chr  "Finland" "Finland" "Finland" "Finland" ...
##  $ Latitude                    : num  61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
##  $ Longitude                   : num  23.5 23.5 23.5 23.5 23.5 ...
##  $ Altitude                    : int  88 88 88 88 88 88 88 88 88 88 ...

Factors need reformatting (i.e. Supervisor.PI should be coded as a factor, not character).

str(d_Via)
## 'data.frame':    2367 obs. of  12 variables:
##  $ Supervisor.PI               : chr  "Gibert" "Gibert" "Gibert" "Gibert" ...
##  $ Diet                        : chr  "NS" "NS" "NS" "NS" ...
##  $ Batch                       : int  1 1 1 1 1 1 1 1 1 1 ...
##  $ Population                  : chr  "AK" "AK" "AK" "AK" ...
##  $ Line                        : chr  "AK1" "AK1" "AK1" "AK10" ...
##  $ ReplicateVialOld            : int  1 2 3 1 2 3 1 2 3 1 ...
##  $ ReplicateVial               : chr  "Gibert_1_AK1_1" "Gibert_1_AK1_2" "Gibert_1_AK1_3" "Gibert_1_AK10_1" ...
##  $ ProportionEggtoAdultSurvival: num  0.68 0.73 0.63 0.85 0.75 0.8 0.85 0.88 0.7 0.68 ...
##  $ Country                     : chr  "Finland" "Finland" "Finland" "Finland" ...
##  $ Latitude                    : num  61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
##  $ Longitude                   : num  23.5 23.5 23.5 23.5 23.5 ...
##  $ Altitude                    : int  88 88 88 88 88 88 88 88 88 88 ...
d_Via$Supervisor.PI <- as.factor(d_Via$Supervisor.PI)
d_Via$Diet <- as.factor(d_Via$Diet)
d_Via$Batch <- as.factor(d_Via$Batch)
d_Via$Population_Lat <- factor(d_Via$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_Via$Population_Lon <- factor(d_Via$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_Via$Population_Alt <- factor(d_Via$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_Via$Line <- as.factor(d_Via$Line)
d_Via$ReplicateVial <- as.factor(d_Via$ReplicateVial)
d_Via$ProportionEggtoAdultSurvival <- as.numeric(d_Via$ProportionEggtoAdultSurvival)
d_Via$Country <- as.factor(d_Via$Country)
d_Via$Latitude <- as.numeric(d_Via$Latitude)
d_Via$Longitude <- as.numeric(d_Via$Longitude)
d_Via$Altitude <- as.numeric(d_Via$Altitude)

# Now they should be in the correct format, see below. 
str(d_Via)
## 'data.frame':    2367 obs. of  15 variables:
##  $ Supervisor.PI               : Factor w/ 6 levels "Gibert","Grath",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ Diet                        : Factor w/ 1 level "NS": 1 1 1 1 1 1 1 1 1 1 ...
##  $ Batch                       : Factor w/ 4 levels "1","2","3","4": 1 1 1 1 1 1 1 1 1 1 ...
##  $ Population                  : chr  "AK" "AK" "AK" "AK" ...
##  $ Line                        : Factor w/ 172 levels "AK1","AK10","AK11",..: 1 1 1 2 2 2 4 4 4 9 ...
##  $ ReplicateVialOld            : int  1 2 3 1 2 3 1 2 3 1 ...
##  $ ReplicateVial               : Factor w/ 2367 levels "Gibert_1_AK1_1",..: 1 2 3 4 5 6 7 8 9 10 ...
##  $ ProportionEggtoAdultSurvival: num  0.68 0.73 0.63 0.85 0.75 0.8 0.85 0.88 0.7 0.68 ...
##  $ Country                     : Factor w/ 9 levels "Austria","Denmark",..: 3 3 3 3 3 3 3 3 3 3 ...
##  $ Latitude                    : num  61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
##  $ Longitude                   : num  23.5 23.5 23.5 23.5 23.5 ...
##  $ Altitude                    : num  88 88 88 88 88 88 88 88 88 88 ...
##  $ Population_Lat              : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
##  $ Population_Lon              : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
##  $ Population_Alt              : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
# Voila! 

Descriptive Statistics

Tables for descriptive statistics at population and line level can be found in the main trait directory, under the file name table_TraitAbbreviation_Level_BatchInfo.csv (i.e. table_Via_Line_wobatch.csv)

Descriptive statistics for viability at the line level, with batch information :

Descriptive statistics for viability at the line level, without batch information :

Descriptive statistics for viability at the population level, with batch information :

Descriptive statistics for viability at the population level, without batch information :

Plots and Linear Models by Lab

The very same theme has been used all across the document, being a ggplot theme called droseu_theme

droseu_theme <- theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank(), panel.background = element_blank(), axis.line = element_line(colour = "black",),  axis.title.x = element_text(size = 16), axis.text.x = element_text(size = 16),axis.text.y = element_text(size = 16),axis.title.y = element_text(size = 16))

Data range is calculated with #r min() and #r max() functions for each trait.

min_Via <- min(d_Via$ProportionEggtoAdultSurvival)
max_Via <- max(d_Via$ProportionEggtoAdultSurvival)

y-axis is scaled by the minimum (0) and maximum (1) values in the full data set.

Here is an example code for egg-to-adult viability, Gibert Lab. The same code is used to generate plots for other contributing labs by filtering the data at supervisor level (for females and males, if applicable).

Gibert Lab

pdf(file="Viability/p_Via_Gibert.pdf",width=8, height=5)
p_Via_Gibert <- ggplot(data = (subset(d_Via,Supervisor.PI=='Gibert')), aes(x=Population_Lat, y=ProportionEggtoAdultSurvival, fill=Batch)) + geom_boxplot(outlier.shape = NA, notch=FALSE) +  geom_jitter(width=0.2,alpha=0.05) + labs(title="p_Via_Gibert", x="Population", y = "ProportionEggtoAdultSurvival")
p_Via_Gibert + coord_cartesian(ylim = c(0, 1))+ droseu_theme

invisible(dev.off())
pdf(file="Viability/p_Via_pop_Gibert.pdf",width=8, height=5)
p_Via_pop_Gibert <- ggplot(data = (subset(d_Via,Supervisor.PI=='Gibert')), aes(x=Population_Lat, y=ProportionEggtoAdultSurvival, fill=Population)) +geom_boxplot(outlier.shape = NA, notch=FALSE) +  geom_jitter(width=0.2,alpha=0.05) + labs(title="p_Via_pop_Gibert", x="Population", y = "ProportionEggtoAdultSurvival") 
p_Via_pop_Gibert + coord_cartesian(ylim = c(0, 1))+ droseu_theme

invisible(dev.off())
Via_lmer_Gibert <- lmer(ProportionEggtoAdultSurvival ~ Population + (1|Line:Population) + (1|Batch) , data = d_Via[d_Via$Supervisor.PI == "Gibert",])
capture.output(summary(Via_lmer_Gibert),file = "Viability/Via_lmer_Gibert_sum.txt")
capture.output(anova(Via_lmer_Gibert),file = "Viability/Via_lmer_Gibert.txt")
capture.output(emmeans(Via_lmer_Gibert, list(pairwise ~ Population), adjust = "tukey"),file = "Viability/Via_lmer_Gibert_tk.txt")
anova(Via_lmer_Gibert)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq  Mean Sq NumDF  DenDF F value    Pr(>F)    
## Population 0.6029 0.075362     8 154.72  8.1983 3.224e-09 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(Via_lmer_Gibert)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: ProportionEggtoAdultSurvival ~ Population + (1 | Line:Population) +  
##     (1 | Batch)
##    Data: d_Via[d_Via$Supervisor.PI == "Gibert", ]
## 
## REML criterion at convergence: -687.4
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -4.8895 -0.5220  0.0038  0.5549  2.4861 
## 
## Random effects:
##  Groups          Name        Variance  Std.Dev.
##  Line:Population (Intercept) 1.064e-02 0.103146
##  Batch           (Intercept) 6.195e-05 0.007871
##  Residual                    9.192e-03 0.095877
## Number of obs: 532, groups:  Line:Population, 169; Batch, 3
## 
## Fixed effects:
##               Estimate Std. Error        df t value Pr(>|t|)    
## (Intercept)    0.75693    0.02658  51.26227  28.476  < 2e-16 ***
## PopulationGI  -0.14773    0.03986 155.28178  -3.706 0.000292 ***
## PopulationKA  -0.03422    0.03696 155.95970  -0.926 0.355981    
## PopulationMA  -0.11278    0.03691 154.48413  -3.056 0.002647 ** 
## PopulationMU  -0.03629    0.03692 155.28351  -0.983 0.327104    
## PopulationRE  -0.11002    0.03921 155.98273  -2.806 0.005655 ** 
## PopulationUM  -0.04241    0.03792 155.09608  -1.118 0.265136    
## PopulationVA  -0.12079    0.03692 155.28351  -3.272 0.001316 ** 
## PopulationYE  -0.24601    0.03692 155.28351  -6.664 4.38e-10 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.640                                                 
## PopulatinKA -0.691  0.462                                          
## PopulatinMA -0.693  0.463  0.500                                   
## PopulatinMU -0.692  0.463  0.500  0.500                            
## PopulatinRE -0.651  0.437  0.470  0.470  0.471                     
## PopulatinUM -0.673  0.451  0.487  0.487  0.487  0.458              
## PopulatinVA -0.692  0.463  0.500  0.500  0.500  0.471  0.487       
## PopulatinYE -0.692  0.463  0.500  0.500  0.500  0.471  0.487  0.500

Grath Lab

anova(Via_lmer_Grath)
## Type III Analysis of Variance Table with Satterthwaite's method
##             Sum Sq  Mean Sq NumDF  DenDF F value Pr(>F)
## Population 0.07035 0.035175     2 27.293  2.1926 0.1309
summary(Via_lmer_Grath)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: ProportionEggtoAdultSurvival ~ Population + (1 | Line:Population)
##    Data: d_Via[d_Via$Supervisor.PI == "Grath", ]
## 
## REML criterion at convergence: -155.6
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -3.14211 -0.56745  0.04161  0.55412  2.60033 
## 
## Random effects:
##  Groups          Name        Variance Std.Dev.
##  Line:Population (Intercept) 0.003394 0.05826 
##  Residual                    0.016043 0.12666 
## Number of obs: 147, groups:  Line:Population, 30
## 
## Fixed effects:
##              Estimate Std. Error       df t value Pr(>|t|)    
## (Intercept)   0.69027    0.02612 28.41694  26.424   <2e-16 ***
## PopulationMU -0.07424    0.03664 27.57805  -2.026   0.0525 .  
## PopulationRE -0.05444    0.03664 27.57805  -1.486   0.1487    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) PpltMU
## PopulatinMU -0.713       
## PopulatinRE -0.713  0.508

Hoedjes Lab

anova(Via_lmer_Hoedjes)
## Type III Analysis of Variance Table with Satterthwaite's method
##             Sum Sq  Mean Sq NumDF DenDF F value    Pr(>F)    
## Population 0.35451 0.044314     8   158  6.1992 5.871e-07 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(Via_lmer_Hoedjes)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: ProportionEggtoAdultSurvival ~ Population + (1 | Line:Population) +  
##     (1 | Batch)
##    Data: d_Via[d_Via$Supervisor.PI == "Hoedjes", ]
## 
## REML criterion at convergence: -712.5
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.7848 -0.5126 -0.0026  0.5498  2.7446 
## 
## Random effects:
##  Groups          Name        Variance  Std.Dev. 
##  Line:Population (Intercept) 1.219e-02 1.104e-01
##  Batch           (Intercept) 2.196e-12 1.482e-06
##  Residual                    7.148e-03 8.455e-02
## Number of obs: 501, groups:  Line:Population, 167; Batch, 4
## 
## Fixed effects:
##               Estimate Std. Error        df t value Pr(>|t|)    
## (Intercept)    0.77450    0.02699 157.99983  28.694  < 2e-16 ***
## PopulationGI  -0.17183    0.04123 157.99984  -4.168 5.06e-05 ***
## PopulationKA  -0.05633    0.03817 157.99984  -1.476 0.141995    
## PopulationMA  -0.06600    0.03817 157.99984  -1.729 0.085761 .  
## PopulationMU  -0.03500    0.03817 157.99984  -0.917 0.360593    
## PopulationRE  -0.15117    0.04123 157.99985  -3.666 0.000336 ***
## PopulationUM  -0.08960    0.03982 157.99985  -2.250 0.025827 *  
## PopulationVA  -0.09367    0.03817 157.99984  -2.454 0.015222 *  
## PopulationYE  -0.21483    0.03817 157.99984  -5.628 8.11e-08 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.655                                                 
## PopulatinKA -0.707  0.463                                          
## PopulatinMA -0.707  0.463  0.500                                   
## PopulatinMU -0.707  0.463  0.500  0.500                            
## PopulatinRE -0.655  0.429  0.463  0.463  0.463                     
## PopulatinUM -0.678  0.444  0.479  0.479  0.479  0.444              
## PopulatinVA -0.707  0.463  0.500  0.500  0.500  0.463  0.479       
## PopulatinYE -0.707  0.463  0.500  0.500  0.500  0.463  0.479  0.500
## optimizer (nloptwrap) convergence code: 0 (OK)
## boundary (singular) fit: see ?isSingular

Schmidt Lab

## quartz_off_screen 
##                 2

anova(Via_lm_Schmidt) #lm()` is used only for Schmidt Lab's viability data, as only one vial per line was phenotyped 
## Analysis of Variance Table
## 
## Response: ProportionEggtoAdultSurvival
##             Df Sum Sq  Mean Sq F value  Pr(>F)  
## Population   8 1.0046 0.125579  2.5425 0.01256 *
## Residuals  153 7.5570 0.049392                  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(Via_lm_Schmidt)
## 
## Call:
## lm(formula = ProportionEggtoAdultSurvival ~ Population, data = d_Via[d_Via$Supervisor.PI == 
##     "Schmidt", ])
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.48129 -0.19237  0.02616  0.16173  0.51871 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   0.625157   0.049695  12.580   <2e-16 ***
## PopulationGI -0.143866   0.075911  -1.895   0.0600 .  
## PopulationKA  0.135186   0.070280   1.924   0.0563 .  
## PopulationMA  0.007477   0.072206   0.104   0.9177    
## PopulationMU -0.052544   0.070280  -0.748   0.4558    
## PopulationRE  0.004666   0.075911   0.061   0.9511    
## PopulationUM  0.085505   0.077444   1.104   0.2713    
## PopulationVA -0.041436   0.070280  -0.590   0.5563    
## PopulationYE -0.087422   0.070280  -1.244   0.2154    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2222 on 153 degrees of freedom
## Multiple R-squared:  0.1173, Adjusted R-squared:  0.07119 
## F-statistic: 2.542 on 8 and 153 DF,  p-value: 0.01256

Stamenkovic-Radak Lab

anova(Via_lmer_StamenkovicRadak)
## Type III Analysis of Variance Table with Satterthwaite's method
##             Sum Sq  Mean Sq NumDF  DenDF F value    Pr(>F)    
## Population 0.39276 0.049095     8 155.26  5.0862 1.243e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(Via_lmer_StamenkovicRadak)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: ProportionEggtoAdultSurvival ~ Population + (1 | Line:Population) +  
##     (1 | Batch)
##    Data: d_Via[d_Via$Supervisor.PI == "StamenkovicRadak", ]
## 
## REML criterion at convergence: -589.4
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.6754 -0.5185  0.0052  0.5759  2.2517 
## 
## Random effects:
##  Groups          Name        Variance Std.Dev.
##  Line:Population (Intercept) 0.013176 0.11479 
##  Batch           (Intercept) 0.001207 0.03475 
##  Residual                    0.009652 0.09825 
## Number of obs: 501, groups:  Line:Population, 167; Batch, 4
## 
## Fixed effects:
##               Estimate Std. Error        df t value Pr(>|t|)    
## (Intercept)    0.67693    0.03355  21.98005  20.176 1.13e-15 ***
## PopulationGI  -0.07436    0.04570 155.38082  -1.627  0.10573    
## PopulationKA  -0.02793    0.04054 155.23842  -0.689  0.49191    
## PopulationMA  -0.12034    0.04051 155.10198  -2.971  0.00344 ** 
## PopulationMU   0.02403    0.04051 155.08224   0.593  0.55386    
## PopulationRE  -0.05090    0.04302 155.34042  -1.183  0.23859    
## PopulationUM  -0.08775    0.04168 155.34524  -2.106  0.03685 *  
## PopulationVA  -0.11615    0.04051 155.10172  -2.867  0.00472 ** 
## PopulationYE  -0.18226    0.04054 155.23842  -4.496 1.35e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.535                                                 
## PopulatinKA -0.606  0.443                                          
## PopulatinMA -0.603  0.441  0.499                                   
## PopulatinMU -0.605  0.442  0.500  0.500                            
## PopulatinRE -0.571  0.415  0.472  0.471  0.472                     
## PopulatinUM -0.590  0.429  0.488  0.486  0.487  0.460              
## PopulatinVA -0.604  0.445  0.500  0.499  0.500  0.470  0.485       
## PopulatinYE -0.606  0.443  0.501  0.499  0.500  0.472  0.488  0.500

Zwaan Lab

anova(Via_lmer_Zwaan)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF  DenDF F value    Pr(>F)    
## Population 1.1594 0.14492     8 151.78  6.6463 1.944e-07 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(Via_lmer_Zwaan)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: ProportionEggtoAdultSurvival ~ Population + (1 | Line:Population) +  
##     (1 | Batch)
##    Data: d_Via[d_Via$Supervisor.PI == "Zwaan", ]
## 
## REML criterion at convergence: -328.3
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.8665 -0.4405  0.1045  0.5674  2.7223 
## 
## Random effects:
##  Groups          Name        Variance Std.Dev.
##  Line:Population (Intercept) 0.01052  0.1025  
##  Batch           (Intercept) 0.00000  0.0000  
##  Residual                    0.02180  0.1477  
## Number of obs: 524, groups:  Line:Population, 169; Batch, 2
## 
## Fixed effects:
##                Estimate Std. Error         df t value Pr(>|t|)    
## (Intercept)    0.753292   0.029612 148.129254  25.439  < 2e-16 ***
## PopulationGI  -0.109677   0.045264 147.538931  -2.423   0.0166 *  
## PopulationKA   0.006964   0.042022 149.533027   0.166   0.8686    
## PopulationMA  -0.039616   0.042055 150.208886  -0.942   0.3477    
## PopulationMU  -0.045938   0.042393 153.358912  -1.084   0.2802    
## PopulationRE  -0.107348   0.044247 145.966515  -2.426   0.0165 *  
## PopulationUM   0.025615   0.043113 148.966551   0.594   0.5533    
## PopulationVA  -0.020760   0.042344 153.060112  -0.490   0.6247    
## PopulationYE  -0.226033   0.042298 153.374414  -5.344 3.24e-07 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.654                                                 
## PopulatinKA -0.705  0.461                                          
## PopulatinMA -0.704  0.461  0.496                                   
## PopulatinMU -0.698  0.457  0.492  0.492                            
## PopulatinRE -0.669  0.438  0.472  0.471  0.467                     
## PopulatinUM -0.687  0.449  0.484  0.484  0.480  0.460              
## PopulatinVA -0.699  0.457  0.493  0.492  0.488  0.468  0.480       
## PopulatinYE -0.700  0.458  0.493  0.493  0.489  0.469  0.481  0.490
## optimizer (nloptwrap) convergence code: 0 (OK)
## boundary (singular) fit: see ?isSingular

Lab correlations

Developmental time

Egg-to-pupa developmental time

Contributors:

Schmidt Lab : Paul Schmidt

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Schmidt Lab

Egg-to-adult developmental time

Contributors:

Gibert Lab : Cristina Vieira, Laurence Mouton, Natacha Kremer, Sonia Martinez, Patricia Gibert

Grath Lab : Ingo Müller, Sonja Grath

Hoedjes Lab : Hristina Kostic, Katja Hoedjes

Schmidt Lab : Ozan Kiratli, Yonatan Babore, Liam Forsythe, Paul Schmidt

Stamenkovic-Radak Lab : Marija Savic Veselinovic, Marija Tanaskovic, Aleksandra Patenkovic, Mihailo Jelic, Katarina Eric, Pavle Eric, Slobodan Davidovic, Marina Stamenkovic-Radak

Zwaan Lab : Joost van den Heuvel, Bas Zwaan

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Gibert Lab
Grath Lab
Hoedjes Lab
Schmidt Lab
Stamenkovic-Radak Lab
Zwaan Lab

Lab correlations

Dry weight

Contributors:

Colinet Lab : Sapho-Lou Marti , Hervé Colinet Hoedjes Lab : Hristina Kostic, Katja Hoedjes Onder Lab : Seda Coskun, Senel Selin Senkal, Dogus Can, Banu Sebnem Onder

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Colinet Lab

Hoedjes Lab

Onder Lab

Lab correlations

Thorax length

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Kozeretska Lab

Posnien Lab

Ritchie Lab

Schmidt Lab

Lab correlations

Wing area - Right

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Onder Lab

Posnien Lab

Ritchie Lab

Stamenkovic-Radak Lab

Lab correlations

Wing area - Left

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Onder Lab

Posnien Lab

Ritchie Lab

Stamenkovic-Radak Lab

Lab correlations

Fecundity

Contributors:

Billeter Lab : Xiaocui Wang, Tiphaine Bailly, Mario Mira, Jean-Christophe Billeter
Fricke Lab : Claudia Fricke

Data Reformatting

Reading data in R

d_Fec <- read.csv("MasterSheets_Oct21_git/FEC_MasterSheet_Oct21.csv")
str(d_Fec)
## 'data.frame':    1725 obs. of  13 variables:
##  $ Supervisor.PI        : chr  "Billeter" "Billeter" "Billeter" "Billeter" ...
##  $ Diet                 : chr  "NS" "NS" "NS" "NS" ...
##  $ Batch                : int  1 1 1 1 1 1 1 1 1 1 ...
##  $ Population           : chr  "AK" "AK" "AK" "AK" ...
##  $ Line                 : chr  "AK1" "AK1" "AK1" "AK1" ...
##  $ Individual           : int  1 2 3 4 5 1 2 3 4 5 ...
##  $ NumberOfAdultsEclosed: int  206 75 54 58 278 162 0 101 145 188 ...
##  $ Notes                : chr  NA NA NA NA ...
##  $ Censor               : int  0 0 0 0 0 0 0 0 0 0 ...
##  $ Country              : chr  "Finland" "Finland" "Finland" "Finland" ...
##  $ Latitude             : num  61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
##  $ Longitude            : num  23.5 23.5 23.5 23.5 23.5 ...
##  $ Altitude             : int  88 88 88 88 88 88 88 88 88 88 ...

Factors need reformatting (i.e. Supervisor.PI should be coded as a factor, not character).

str(d_Fec)
## 'data.frame':    1725 obs. of  13 variables:
##  $ Supervisor.PI        : chr  "Billeter" "Billeter" "Billeter" "Billeter" ...
##  $ Diet                 : chr  "NS" "NS" "NS" "NS" ...
##  $ Batch                : int  1 1 1 1 1 1 1 1 1 1 ...
##  $ Population           : chr  "AK" "AK" "AK" "AK" ...
##  $ Line                 : chr  "AK1" "AK1" "AK1" "AK1" ...
##  $ Individual           : int  1 2 3 4 5 1 2 3 4 5 ...
##  $ NumberOfAdultsEclosed: int  206 75 54 58 278 162 0 101 145 188 ...
##  $ Notes                : chr  NA NA NA NA ...
##  $ Censor               : int  0 0 0 0 0 0 0 0 0 0 ...
##  $ Country              : chr  "Finland" "Finland" "Finland" "Finland" ...
##  $ Latitude             : num  61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
##  $ Longitude            : num  23.5 23.5 23.5 23.5 23.5 ...
##  $ Altitude             : int  88 88 88 88 88 88 88 88 88 88 ...
d_Fec$Supervisor.PI <- as.factor(d_Fec$Supervisor.PI)
d_Fec$Diet <- as.factor(d_Fec$Diet)
d_Fec$Batch <- as.factor(d_Fec$Batch)
d_Fec$Population <- as.factor(d_Fec$Population)
d_Fec$Population_Lat <- factor(d_Fec$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_Fec$Population_Lon <- factor(d_Fec$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_Fec$Population_Alt <- factor(d_Fec$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_Fec$Line <- as.factor(d_Fec$Line)
d_Fec$NumberOfAdultsEclosed <- as.numeric(d_Fec$NumberOfAdultsEclosed)
d_Fec$Censor <- as.factor(d_Fec$Censor)
str(d_Fec)
## 'data.frame':    1725 obs. of  16 variables:
##  $ Supervisor.PI        : Factor w/ 2 levels "Billeter","Fricke": 1 1 1 1 1 1 1 1 1 1 ...
##  $ Diet                 : Factor w/ 2 levels "NS","S": 1 1 1 1 1 1 1 1 1 1 ...
##  $ Batch                : Factor w/ 8 levels "1","2","3","4",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ Population           : Factor w/ 9 levels "AK","GI","KA",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ Line                 : Factor w/ 169 levels "AK1","AK10","AK11",..: 1 1 1 1 1 11 11 11 11 11 ...
##  $ Individual           : int  1 2 3 4 5 1 2 3 4 5 ...
##  $ NumberOfAdultsEclosed: num  206 75 54 58 278 162 0 101 145 188 ...
##  $ Notes                : chr  NA NA NA NA ...
##  $ Censor               : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 1 1 1 1 ...
##  $ Country              : chr  "Finland" "Finland" "Finland" "Finland" ...
##  $ Latitude             : num  61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
##  $ Longitude            : num  23.5 23.5 23.5 23.5 23.5 ...
##  $ Altitude             : int  88 88 88 88 88 88 88 88 88 88 ...
##  $ Population_Lat       : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
##  $ Population_Lon       : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
##  $ Population_Alt       : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
d_Fec <- subset(d_Fec, Censor == "0")

Now they should be in the correct format, see below.

str(d_Fec)
## 'data.frame':    1721 obs. of  16 variables:
##  $ Supervisor.PI        : Factor w/ 2 levels "Billeter","Fricke": 1 1 1 1 1 1 1 1 1 1 ...
##  $ Diet                 : Factor w/ 2 levels "NS","S": 1 1 1 1 1 1 1 1 1 1 ...
##  $ Batch                : Factor w/ 8 levels "1","2","3","4",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ Population           : Factor w/ 9 levels "AK","GI","KA",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ Line                 : Factor w/ 169 levels "AK1","AK10","AK11",..: 1 1 1 1 1 11 11 11 11 11 ...
##  $ Individual           : int  1 2 3 4 5 1 2 3 4 5 ...
##  $ NumberOfAdultsEclosed: num  206 75 54 58 278 162 0 101 145 188 ...
##  $ Notes                : chr  NA NA NA NA ...
##  $ Censor               : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 1 1 1 1 ...
##  $ Country              : chr  "Finland" "Finland" "Finland" "Finland" ...
##  $ Latitude             : num  61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
##  $ Longitude            : num  23.5 23.5 23.5 23.5 23.5 ...
##  $ Altitude             : int  88 88 88 88 88 88 88 88 88 88 ...
##  $ Population_Lat       : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
##  $ Population_Lon       : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
##  $ Population_Alt       : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...

Descriptive Statistics

Tables for descriptive statistics at population and line level can be found in the main trait directory, under the file name table_TraitAbbreviation_Level_BatchInfo.csv (i.e. table_Via_Line_wobatch.csv)

Descriptive statistics for viability at the line level, with batch information :

Descriptive statistics for fecundity at the line level, without batch information :

Descriptive statistics for viability at the population level, with batch information :

Descriptive statistics for viability at the population level, without batch information :

Plots and Linear Models by Lab

The very same theme has been used all across the document, being a ggplot theme called droseu_theme

droseu_theme <- theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank(), panel.background = element_blank(), axis.line = element_line(colour = "black",),  axis.title.x = element_text(size = 16), axis.text.x = element_text(size = 16),axis.text.y = element_text(size = 16),axis.title.y = element_text(size = 16))

Data range is calculated with #r min() and #r max() functions for each trait.

min_Fec <- min(d_Fec$NumberOfAdultsEclosed)
max_Fec <- max(d_Fec$NumberOfAdultsEclosed)

y-axis is scaled by the minimum (0) and maximum (306) values in the full data set.

Here is an example code for fecundity, Billeter Lab. The same code is used to generate plots for other contributing labs by filtering the data at supervisor level (for females and males, if applicable).

Billeter Lab

pdf(file="Fecundity/p_Fec_Billeter.pdf",width=8, height=5)
p_Fec_Billeter <- ggplot(data = (subset(d_Fec,Supervisor.PI=='Billeter')), aes(x=Population_Lat, y=NumberOfAdultsEclosed, fill=Batch)) +  geom_boxplot(outlier.shape = NA, notch=FALSE) +  geom_jitter(width=0.2,alpha=0.05) + labs(title="p_Fec_Billeter", x="Population", y = "NumberOfAdultsEclosed")
p_Fec_Billeter + coord_cartesian(ylim = c(min_Fec, max_Fec))+ droseu_theme

dev.off()
## pdf 
##   3
pdf(file="Fecundity/p_Fec_pop_Billeter.pdf",width=8, height=5)
p_Fec_pop_Billeter <- ggplot(data = (subset(d_Fec,Supervisor.PI=='Billeter')), aes(x=Population_Lat, y=NumberOfAdultsEclosed, fill=Population_Lat)) + geom_boxplot(outlier.shape = NA, notch=FALSE) +  geom_jitter(width=0.2,alpha=0.05) + labs(title="p_Fec_pop_Billeter", x="Population", y = "NumberOfAdultsEclosed")
p_Fec_pop_Billeter + coord_cartesian(ylim = c(min_Fec, max_Fec))+ droseu_theme

dev.off()
## pdf 
##   3
Fec_lmer_Billeter <- lmer(NumberOfAdultsEclosed ~ Population + (1|Population:Line), data = d_Fec[d_Fec$Supervisor.PI == "Billeter",]) 
capture.output(anova(Fec_lmer_Billeter),file = "Fecundity/Fec_lmer_Billeter.txt")
capture.output(summary(Fec_lmer_Billeter),file = "Fecundity/Fec_lmer_Billeter_sum.txt")
capture.output(emmeans(Fec_lmer_Billeter, list(pairwise ~ Population), adjust = "tukey"),file = "Fecundity/Fec_lmer_Billeter_tukey.txt")
anova(Fec_lmer_Billeter)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF  DenDF F value   Pr(>F)   
## Population  61874  7734.2     8 148.39  2.7992 0.006461 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(Fec_lmer_Billeter)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: NumberOfAdultsEclosed ~ Population + (1 | Population:Line)
##    Data: d_Fec[d_Fec$Supervisor.PI == "Billeter", ]
## 
## REML criterion at convergence: 8773.2
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -3.02323 -0.55643 -0.03579  0.53645  2.97008 
## 
## Random effects:
##  Groups          Name        Variance Std.Dev.
##  Population:Line (Intercept) 1113     33.36   
##  Residual                    2763     52.56   
## Number of obs: 805, groups:  Population:Line, 160
## 
## Fixed effects:
##              Estimate Std. Error      df t value Pr(>|t|)    
## (Intercept)    97.067      9.154 149.480  10.603   <2e-16 ***
## PopulationGI  -22.874     13.904 146.434  -1.645   0.1021    
## PopulationKA   12.903     12.928 148.886   0.998   0.3198    
## PopulationMA    2.053     13.460 147.925   0.152   0.8790    
## PopulationMU   -3.225     13.226 152.369  -0.244   0.8077    
## PopulationRE  -29.213     14.231 148.404  -2.053   0.0419 *  
## PopulationUM    5.760     13.959 148.978   0.413   0.6805    
## PopulationVA  -10.734     12.894 147.238  -0.832   0.4065    
## PopulationYE  -33.130     12.963 150.368  -2.556   0.0116 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.658                                                 
## PopulatinKA -0.708  0.466                                          
## PopulatinMA -0.680  0.448  0.482                                   
## PopulatinMU -0.692  0.456  0.490  0.471                            
## PopulatinRE -0.643  0.424  0.455  0.437  0.445                     
## PopulatinUM -0.656  0.432  0.464  0.446  0.454  0.422              
## PopulatinVA -0.710  0.467  0.503  0.483  0.491  0.457  0.466       
## PopulatinYE -0.706  0.465  0.500  0.480  0.489  0.454  0.463  0.501

Fricke Lab

## pdf 
##   3

## pdf 
##   3
anova(Fec_lmer_Fricke)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF  DenDF F value Pr(>F)
## Population 4506.3  563.29     8 146.12  0.4525 0.8873
summary(Fec_lmer_Fricke)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: NumberOfAdultsEclosed ~ Population + (1 | Population:Line) +  
##     (1 | Batch)
##    Data: d_Fec[d_Fec$Supervisor.PI == "Fricke", ]
## 
## REML criterion at convergence: 9249.1
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -2.8102 -0.6481 -0.0705  0.5894  3.4523 
## 
## Random effects:
##  Groups          Name        Variance Std.Dev.
##  Population:Line (Intercept)  455.06  21.332  
##  Batch           (Intercept)   41.26   6.423  
##  Residual                    1244.86  35.283  
## Number of obs: 916, groups:  Population:Line, 161; Batch, 8
## 
## Fixed effects:
##              Estimate Std. Error      df t value Pr(>|t|)    
## (Intercept)    61.074      6.779  95.724   9.009 2.05e-14 ***
## PopulationGI  -10.583      9.374 152.556  -1.129    0.261    
## PopulationKA  -10.298      8.769 143.094  -1.174    0.242    
## PopulationMA   -5.089      8.673 146.815  -0.587    0.558    
## PopulationMU   -4.207      8.875 147.002  -0.474    0.636    
## PopulationRE   -3.612      9.302 151.133  -0.388    0.698    
## PopulationUM  -14.075      8.963 148.011  -1.570    0.118    
## PopulationVA   -7.192      8.825 149.162  -0.815    0.416    
## PopulationYE   -8.232      8.793 151.818  -0.936    0.351    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.623                                                 
## PopulatinKA -0.665  0.483                                          
## PopulatinMA -0.671  0.486  0.522                                   
## PopulatinMU -0.667  0.475  0.511  0.513                            
## PopulatinRE -0.628  0.455  0.487  0.495  0.478                     
## PopulatinUM -0.653  0.472  0.505  0.514  0.495  0.479              
## PopulatinVA -0.668  0.477  0.513  0.521  0.510  0.484  0.503       
## PopulatinYE -0.668  0.480  0.514  0.522  0.507  0.486  0.506  0.511

Lab correlations

Lifespan

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Flatt Lab

Parsch Lab

Pasyukova Lab

Survival Analyses

Flatt Lab

Parsch Lab

Pasyukova Lab

Lab correlations

Cold-shock mortality

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Gonzalez Lab

Kozeretska Lab

Vieira Lab

Lab correlations

Chill-coma recovery time

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Vieira Lab

Mensh Lab

Lab correlations

Heat-shock mortality

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Parsch Lab

Vieira Lab

Lab correlations

Diapause

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Bergland Lab

Flatt Lab

Schlotterer Lab

Lab correlations

Circadian eclosion timing

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Wegener Lab

Meeting w Eran and Chris

  • Eran to make circular figures for both CET and LA
  • no sexual dimorphism for period. YAY!
  • auto detection of phase is not reliable in the software - Eran wants to drop that trait in his data.
  • Watson Ftest
  • Circular data ANOVA : there are R packages
  • more cold adapted was expected to eclose later (to wait for the warmer period of the day) but it is not the case
  • LD : log2 transformation
  • Activity : any transformation
  • Period : ?transformation
  • Eran’s L:D -> D:D (circ)
  • Chris sent littoralis paper - can use our diapause results to compare!

Locomotor activity

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Tauber Lab

Eran to make circular figures for both CET and LA

Starvation resistance

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Gonzalez Lab

Onder Lab

Pasyukova Lab

Survival Analyses

Gonzalez Lab

Onder Lab

Pasyukova Lab

Lab correlations

Pigmentation

Data Reformatting

Descriptive Statistics

Plots and Linear Models by Lab

Abbott Lab

Gibert Lab

Schmidt Lab

Lab correlations

Results II : Meta-Analyses

with Diet

with Wolbachia

Results III : Trait Correlations

Results III : Qst - Fst

Results IV : Environmental Variables

Results V : Heritability